#pragma once
#include <random>
#include "detect_structure.h"

// 数据模拟器
class DataSimulator
{
private:
    RadarParameters params;
    std::default_random_engine generator;
    std::normal_distribution<float> noise_dist;

public:
    DataSimulator(const RadarParameters &radar_params, float noise_stddev = 0.1f)
        : params(radar_params), noise_dist(0.0f, noise_stddev) {}

    // 生成模拟雷达数据
    std::vector<std::vector<Pulse>> generateData(const std::vector<TargetInfo> &targets);

    void addTarget(std::vector<std::vector<Pulse>> &data, const TargetInfo &target);
};